package cn.itcast.crm.service;

import cn.itcast.crm.domain.Customer;

import javax.ws.rs.*;
import javax.ws.rs.core.MediaType;
import java.util.List;
@Consumes({MediaType.APPLICATION_JSON})   //接受的数据
@Produces({MediaType.APPLICATION_JSON})  //产生的数据
@Path("/customerService")
public interface CustomerService {
    //查询所有未关联的客户列表
    @Path("/customers")
    @GET
    public List<Customer> findNoAssociationCustomers();

    // 查询已经关联到指定定区的客户列表(定区id）
    @Path("/fixedareas/customers/{fid}")
    @GET
    public List<Customer> findHasAssociationFixedAreaCustomers(
            @PathParam("fid") String fixedAreaId);

    // 将客户关联到定区上 ，
    //?ids=1&ids=2
    @Path("/fixedareas/customers/associate")//这个是url地址拼接上点
    @PUT
    public void associationCustomersToFixedArea(
          /*  @QueryParam("fid") String customerIdStr,
            @QueryParam("fixedAreaId") String fixedAreaId);*/
    @QueryParam("ids") List<Integer>ids, //这个是在？后面拼接的字符串数据
    @QueryParam("fid") String fid  );
    //@PathParam("fid") String fid); //这个是指路径上 的参数，，也就是区域编号

    /**
     * 客户注册
     */
    @Path("/register")
    @POST
    Customer register(Customer customer);

    /**
     * 根据电话查询客户
     */
    @Path("/customer/telepone/{telephone}")
    @GET
    Customer findByTelephone (@PathParam("telephone")String telephone);

    //激活客户
    @Path("/customer/updatetype/{id}")
    @PUT
    void updatetype(@PathParam("id") Integer id);

}
